﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.Text;
using System.Drawing;
using System.ComponentModel;
using System.Threading.Tasks;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;

namespace HOASIS.IU.Formularios.Farmacia
{
    public partial class form_Informacion : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            string sesion = Session["Cedula"].ToString();  
            mostrar_persona(sesion);                      
            if (!Page.IsPostBack)
            {
                cargarGrid();
            }
        }

        public string codigo, nombreMedi, cedula, nombre, PApellido, SApellido, peso, correo, edad;//variables para capturar
       

        protected void TxtConsultaMedicamento_TextChanged(object sender, EventArgs e)
        {
            if (TxtConsultaMedicamento.Text == "")
            {
                cargarGrid();
            }
            else
            {
                DataSet ds = new DataSet();
                string consulta = TxtConsultaMedicamento.Text;
                WCFMetodos.Service1Client Ser = new WCFMetodos.Service1Client();
                Ser.BuscarMedicamento(consulta, ref ds);
                DGVMedicamentos.DataSource = ds;
                DGVMedicamentos.DataBind();
            }
        }
        public void mostrar_persona(string ced)
        {    
            DataSet ds = new DataSet();
            WCFMetodos.Service1Client ser = new WCFMetodos.Service1Client();
            ser.Cargar_Persona(ced, ref ds);
            
            TxtCorreo.Text = ds.Tables[0].Rows[0][4].ToString();
            TxtSApellido.Text = ds.Tables[0].Rows[0][3].ToString();
            TxtPApellido.Text = ds.Tables[0].Rows[0][2].ToString();
            TxtNombre.Text = ds.Tables[0].Rows[0][1].ToString();
            TxtCedula.Text = ds.Tables[0].Rows[0][0].ToString();
            txtedad.Text = ds.Tables[0].Rows[0][5].ToString();
                 
        }
        public void cargarGrid()
        {
            DataSet ds = new DataSet();
            WCFMetodos.Service1Client Ser = new WCFMetodos.Service1Client();
            Ser.MostrarMedicamentos(ref ds);
            DGVMedicamentos.DataSource = ds;
            DGVMedicamentos.DataBind();
        }
        public void enviarEmail(string pass, string consulta, string correoPARA, string correoDE, string encabezado)
        {
            WCFMetodos.Service1Client ser = new WCFMetodos.Service1Client();
            ser.enviar_correo(pass, consulta, correoPARA, correoDE, encabezado);
        }
        public void Guardar_Consulta(string cedula, string edad, string peso, string nombre, string PApellido
           , string SApellido, DateTime fechaConsulta, string consulta, string estado_consulta,
           string codigoMedi, string nombreMedi, ref DataSet ds)
        {
            WCFMetodos.Service1Client ser = new WCFMetodos.Service1Client();
            ser.IngresarConsulta(cedula, edad, peso, nombre, PApellido, SApellido, fechaConsulta, consulta, estado_consulta, codigoMedi, nombreMedi, ref ds);
        }

        protected void btnBuscar_Click(object sender, EventArgs e)
        {
            if (TxtConsultaMedicamento.Text.Equals(""))
            {
                TxtConsultaMedicamento.Text = "ingrese el codigo o el nombre del medicamento a buscar";
            }
            else
            {
                DataSet ds = new DataSet();
                string consulta = TxtConsultaMedicamento.Text;
                WCFMetodos.Service1Client Ser = new WCFMetodos.Service1Client();
                Ser.BuscarMedicamento(consulta, ref ds);
                DGVMedicamentos.DataSource = ds;
                DGVMedicamentos.DataBind();
            }
        }

        protected void Ckb_Niño_CheckedChanged(object sender, EventArgs e)
        {
            if (Ckb_Niño.Checked == true)
            {
                Lbl_PesoNiño.Visible = true;
                LblMedidaPeso.Visible = true;
                Txt_PesoNiño.Visible = true;
                lblEdad.Visible = true;
                txtedad.Visible = true;
            }
            else
            {
                Lbl_PesoNiño.Visible = false;
                LblMedidaPeso.Visible = false;
                Txt_PesoNiño.Visible = false;
                lblEdad.Visible = false;
                txtedad.Visible = false;
            }
        }

        //protected void btnSiguiente_Click(object sender, EventArgs e)
        //{
        //    this.MultiView1.ActiveViewIndex += 1;
        //}
        protected void btnSiguiente1_Click(object sender, EventArgs e)
        {
            cedula = TxtCedula.Text;
            nombre = TxtNombre.Text;
            PApellido = TxtPApellido.Text;
            SApellido = TxtSApellido.Text;
            correo = TxtCorreo.Text;
            edad = TxtSEdad.Text;
            this.MultiView1.ActiveViewIndex += 1;
        }
        protected void btnSiguiente2_Click(object sender, EventArgs e)
        {
            peso = "Niño de "+ Txt_PesoNiño.Text + " " + LblMedidaPeso.Text;
            edad = txtedad.Text;
            this.MultiView1.ActiveViewIndex += 1;
        }
        protected void btnAtras_Click(object sender, EventArgs e)
        {
            this.MultiView1.ActiveViewIndex -= 1;
        }

        protected void DGVMedicamentos_PageIndexChanging(object sender, GridViewPageEventArgs e)
        {
            DGVMedicamentos.PageIndex = e.NewPageIndex;
        }
        protected void DGVMedicamentos_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
        {
            GridViewRow fila = DGVMedicamentos.Rows[e.NewSelectedIndex];
            e.Cancel = true;
            codigo = fila.Cells[0].Text;
            nombreMedi = fila.Cells[1].Text;
            this.MultiView1.ActiveViewIndex += 1;
        }
        protected void DGVMedicamentos_Load(object sender, EventArgs e)
        {
            cargarGrid();
        }

        protected void enviar_Click(object sender, EventArgs e)
        {
            string pass = "tonto5700";
            string para = "maxsander5700@gmail.com";
            string encabezado = "HOASIS";
            try
            {
                DataSet ds = new DataSet();
                enviarEmail(pass, Txt_Consulta.Text, para, para, encabezado);//envio el email
                //guardo la consulta
                Guardar_Consulta(cedula, edad, peso,
                nombre, PApellido, SApellido, DateTime.Now, Txt_Consulta.Text, "Pendiente", codigo, nombreMedi, ref ds);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
    }
}